﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace GUI.Danhmuc
{
    using EXT;
    using BLL;
    using DAL.Entities;
    public partial class frmLoaihang : GUI.Danhmuc.frmInputDanhmuc
    {
        public frmLoaihang()
        {
            InitializeComponent();
        }

        DanhmucBLL Danhmuc_BLL = new DanhmucBLL();

        private void frmLoaihang_Load(object sender, EventArgs e)
        {
            txtName.Focus();
        }

        public event MyEvent_LoadData MyEvent_LoadData_Chitiet = null;

        private void btnLuu_Click(object sender, EventArgs e)
        {
            //Kiểm tra nhập liệu
            if (txtName.Text.Trim() == "")
            {
                XtraMessageBox.Show("Chưa nhập tên loại hàng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                txtName.Focus();
                return;
            }

            if (Danhmuc_BLL.IsExists(new Danhmuc { Kind = this.Name.Replace("frm", "").Trim(), Name = txtName.EditValue.ToString().Trim() }))
            {
                XtraMessageBox.Show("Tên loại hàng này đã có\nVui lòng nhập tên loại hàng khác", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                txtName.Focus();
                return;
            }

            //Tùy chọn có ghi chú hay không
            string Ghichu = "";
            if (txtNote.Text.Trim() != "")
            {
                Ghichu = txtNote.EditValue.ToString();
            }

            //Thêm vào danh mục
            Danhmuc dm = new Danhmuc()
            {
                Id = Guid.NewGuid()
                ,
                Kind = this.Name.Replace("frm", "")
                ,
                Name = txtName.EditValue.ToString().Trim().ToUpperFirst()
                ,
                Note = Ghichu
                ,
                Show = true
            };

            if (XtraMessageBox.Show("Bạn có chắc muốn thêm loại hàng này không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
            {
                txtName.Focus();
            }
            else
            {
                if (Danhmuc_BLL.Danhmuc_Insert(dm))
                {
                    if (MyEvent_LoadData_Chitiet != null)
                    {
                        MyEvent_LoadData_Chitiet(this, new ELoadData() { IsLoadData = true });
                    }

                    XtraMessageBox.Show("Thêm loại hàng thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    txtName.EditValue = null;
                    txtNote.EditValue = null;
                    txtName.Focus();
                }
                else
                {
                    XtraMessageBox.Show("Không thể lưu\n\n Kiểm tra lại kết nối đến CSDL", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    txtName.Focus();
                }
            }
        }

        private void btnDong_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
